#include <stdio.h>
#include <string.h>

int main(int argc, char const *argv[])
{
    // 数组和字符串的结合    str[12]只有 11个有效字符 存储空间 因为最后一个得存 '\0'
    char str[128] = "AA_汽车\0销售_小张";
    char * str_1 = "AA_汽车销售_小李";  // 不推荐使用
        // 1、修改内容 会改变地址  不确定原先的 内存空间是否被释放
        // 2、不能在当前位置修改 内容


    // 看 使用 char * 类型和 使用 数组的区别
    printf("str_1 = %s str_1 = %p\n" , str_1 , str_1);
    str_1 = "AA_汽车销售_小胖";
    printf("str_1 = %s str_1 = %p\n" , str_1 , str_1);

    printf("str = %s str = %p\n" , str , str);
    strcpy( str , "AA_汽车销售_小李" );
    printf("str = %s str = %p\n" , str , str);

    printf("str_1 = %s str_1 = %p\n" , str_1 , str_1);
    strcpy( str_1 , "AA_汽车销售_小李" );
    printf("str_1 = %s str_1 = %p\n" , str_1 , str_1);
    // 不使用直接赋值的方式 使用strcpy 的方式 来改变 指针字符串 的值 是有问题的
    return 0;
}






